// pages/order/order.js
const util = require('../../utils/util')
const App = getApp()
import Dialog from '../../miniprogram_npm/@vant/weapp/dialog/dialog';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    allorder: [], //全部
    alltime: [], // 全部订单的门票日期
    awaitorder: [], // 待使用订单 
    awaittime: [], // 待使用订单的门票日期
    payment: [], // 待预订的订单信息
    paytime: [], // 待预订的门票日期
    active: 0,
    loginStatus: false
  },
  // 去往门票详情页面
  goDetail: function (e) {
    // console.log(e.currentTarget.dataset.id)
    if (e.currentTarget.dataset.pay) {
      const url = "/pages/detail/detail?id=" + e.currentTarget.dataset.id
      util.goPage(url)
    }
  },
  // 立即支付按钮函数
  nowPayment(e) {
    // console.log(e.currentTarget.dataset.id)

    Dialog.confirm({
        title: '是否确认购买',
      })
      .then(() => {
        // on confirm
        wx.cloud.callFunction({
            name: 'nowPayment',
            data: {
              id: e.currentTarget.dataset.id
            }
          })
          .then(res => {
            console.log(res)
            // 重新获取待支付的订单信息
            this.getPayment()
            this.getAllOrders()
            this.getAwaitUse()
          })
      })
      .catch(() => {
        // on cancel
      });
  },

  // 获取openid
  getOpenid() {
    wx.cloud.callFunction({
      name: 'getOpenId',
      success: res => {
        console.log(res.result.openid)
        this.setData({
          openid: res.result.openid
        })

        // 调用获取所有订单函数
        this.getAllOrders()
        // 调用获取待使用订单函数
        this.getAwaitUse()
        // 调用待预订的订单函数
        this.getPayment()

      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: async function () {
    const status = wx.getStorageSync('status')
    console.log(App.globalData.openid)
    // 判断用户是否已登录，如果已登录就显示用户订单信息
    console.log(status)
    if (status) {
      this.getOpenid()
    }
  },
  // 获取全部订单
  async getAllOrders() {
    await wx.cloud.callFunction({
        name: 'getOrder',
        data: {
          openid: this.data.openid
        }
      })
      .then(res => {
        var arr = []
        for (var i = 0; i < res.result.data.length; i++) {
          arr.push(res.result.data[i].time.slice(0, 5))
        }
        this.setData({
          loginStatus: true,
          allorder: res.result.data,
          time: arr
        })
      })
  },
  // 获取待使用的订单信息
  async getAwaitUse() {
    await wx.cloud.callFunction({
        name: 'getAwaitOrders'
      })
      .then(res => {
        console.log(res)
        var arr = []
        for (var i = 0; i < res.result.data.length; i++) {
          arr.push(res.result.data[i].time.slice(0, 5))
        }
        this.setData({
          loginStatus: true,
          awaitorder: res.result.data,
          awaittime: arr
        })
      })
  },
  // 获取未支付的订单信息
  async getPayment() {
    await wx.cloud.callFunction({
        name: 'getPayment'
      })
      .then(res => {
        console.log(res)
        var arr = []
        for (var i = 0; i < res.result.data.length; i++) {
          arr.push(res.result.data[i].time.slice(0, 5))
        }
        this.setData({
          loginStatus: true,
          payment: res.result.data,
          paytime: arr
        })
      })
  },
  // 获取待评论订单信息
  getEvaluate() {
    // wx.cloud.callFunction({
    //   name: 'getEvaluate',

    // })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})